package com.teamone.etl.taskmanager.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.teamone.etl.taskmanager.entity.EtlTaskInfo;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 任务信息表(EtlTaskInfo)表数据库访问层

 @author makejava
 @since 2021-01-08 20:42:00 */
@Mapper
public interface EtlTaskInfoDao extends BaseMapper<EtlTaskInfo> {

    /**
     查找任务名称是否重复
     @param name 任务名称
     @return int
     */
    int findByNameNotRepeat(String name);

    /**
        创建任务
     @param etlTaskInfo 任务信息
     @return 创建成功int为1
     */
    int createTask(EtlTaskInfo etlTaskInfo);

    /**
     * 模糊分页查询
     *
     * @param weight        任务权重级别 0紧急任务 1高 2中 3低
     * @param name          任务名称
     * @param status        任务状态   0待执行    1可执行       2正在执行       3执行完成
     * @return   部分数据(id,NAME,weight,status,proportion任务完成度)
     */
    List<EtlTaskInfo> taskSearch(@Param("weight") Integer weight, @Param("name") String name, @Param("status") Integer status);

    /**
     * 根据id删除
     * @param id 主键id
     * @return boolean
     */
    boolean deleteById (@Param("id") String id);
}